package com.cy;



import com.sun.scenario.effect.impl.sw.sse.SSEBlend_SRC_OUTPeer;

import java.util.*;

/**
 * ArrayList实现类
 * 	--1，概述
 * 		是List接口的实现类。拥有和List接口一样的特点。
 * 		底层是数组。
 * 	--2，创建对象
 * 		ArrayList()
 *           构造一个初始容量为 10 的空列表。
 */
public class Test5 {
    public static void main(String[] args) {

        //method();
       // method2();
        method3();


    }
    //TODO 练习:求List里的偶数和,奇数个数,平均值
    private static void method3() {
        List<Integer> list =new ArrayList<>();
        Collections.addAll(list,1,22,4,5,7,8,5,36,84,100);

        int sum=0;
        int count=0;
        int all =0;

        for(Integer data :list){
            all= all+data;

            if(data % 2 ==0){
                sum=sum+data;
            }
            if(data%2==1){
                count++;
            }
        }
        System.out.println("偶数和是："+sum);
        System.out.println("奇数个数是："+count);
        System.out.println("平均数是："+ all/list.size());

    }

    //TODO 练习:求List里的最大值,最小值
    private static void method2() {
        List<Integer> list =new ArrayList<>();
        Collections.addAll(list,1,22,4,5,7,8,5,36,84,100);

        Integer max=Collections.max(list);
        System.out.println(max);
        System.out.println(Collections.min(list));

        Collections.sort(list);
        System.out.println(list);
    }

    private static void method() {
        ArrayList <String> list=new ArrayList<>();
        list.add("1");
        list.add("2");
        list.add("3");
        list.add("1");
        list.add("jack");
        list.add("刘德华");
        list.add(null);
        list.add(null);
        //特点::有序 + 有下标 + 可重复   可以存多个null
        System.out.println(list);
        //[1, 2, 3, 1, jack, 刘德华, null, null]
        //创建对象时,会创建Object数组并初始化
        // elementData = new Object[10];//1.6的写法
        Object [] elementData = {};//1.8的写法

        elementData[0] ="1";
        elementData[1] ="2";
        elementData[2] ="3";
        elementData[3] ="1";
        elementData[4] ="jack";
        elementData= Arrays.copyOf(elementData,15);
        elementData= Arrays.copyOf(elementData,22);



    }
}
